This invention relates to data processing systems.
More specifically, the invention is concerned with a multi-processor data processing system of the kind in which the workload of the system is divided into packets, each packet specifying a function and one or more arguments to which the function is to be applied. One system of this kind is described, for example, in "Flagship Computational Models and Machine Architecture", I. Watson, et al, and "Flagship Hardware and Implementation", P. Townsend, both in the ICL Technical Journal Vol 5, Issue 3, May 1987, published by the Oxford University Press, England.
In such a system, it is desirable that, when a function packet is processed, all its arguments should be available in the local store of the processing node in which the function packet resides. If some of the argument packets are resident in other nodes, then it is necessary to create local copies of those packets in the local store.
Argument packets may be considered to be of two types: constructor packets, representing fixed data structures, and stateholder packets, representing variable values which may change during the course of a computation. For example, a stateholder packet may represent a real-time clock value or a semaphore value.
Stateholder packets present a problem in that, if local copies of a stateholder packet are made, it is difficult to keep all these copies consistent with each other.
The object of the present invention is to provide a way of overcoming this problem.